﻿using Architecture.Domain;
using MediatR;
using System.ComponentModel.DataAnnotations;

namespace Architecture.API.Application.Command.RequestForLeaveCommand
{
    /// <summary>
    /// 请假修改命令
    /// </summary>
    public class LeaveUpdateCommand : IRequest<int>
    {
        /// <summary>
        /// 请假条主键
        /// </summary>
        public int LeaveId { get; set; }

        /// <summary>
        /// 登录人姓名
        /// </summary>
        public string UserName { get; set; }

        /// <summary>
        /// 部门ID
        /// </summary>
        public int DepartmentId { get; set; }

        /// <summary>
        /// 请假类型
        /// </summary>
        public string LeaveType { get; set; }

        /// <summary>
        /// 请假开始时间
        /// </summary>
        public DateTime LeaveStartTime { get; set; }

        /// <summary>
        /// 请假结束时间
        /// </summary>
        public DateTime LeaveEndTime { get; set; }

        /// <summary>
        /// 总工时(H)
        /// </summary>
        public decimal TotalWorkTime { get; set; }

        /// <summary>
        /// 报到时间
        /// </summary>
        public DateTime RegistrationTime { get; set; }

        /// <summary>
        /// 请假事由
        /// </summary>
        public string SubjectMatter { get; set; }

        /// <summary>
        /// 部门领导
        /// </summary>
        public string DepartmentLeader { get; set; }

    }
}
